package testGroovy

def testClosure = { arg1, arg2 = { it }, arg3 ->
    println arg1
    println arg2
    println arg3
}

//参与闭包运算的参数个数必须与定义闭包时 的参数个数一致。
//如果定义闭包时某参数有默认值，颗粒化时如果未指定该参数的值，采用默认值。
//颗粒化时如果设置了该参数，采用设置值
//
//testClosure.curry(1).call()
println '========='
testClosure.curry(1).call(3)
println '========='
testClosure.curry(1).call(3,2)
println '========='
testClosure.curry(1,null).call(3)
println '========='
testClosure.curry(1,43,2).call()
println '========='
//testClosure.curry(1).call(1,3,2)

if(1==1){
    println 1
} else if (1==1) {
    println 2
}

